/*
 * Intersectable.java
 *
 * Created on September 22, 2007, 10:41 AM
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package Raytracing;
import Raytracing.Shaders.Shader;
import processing.core.*;


public abstract class Intersectable {
    public Shader shader;
    protected PVector minBounds,maxBounds;
    
    
    public abstract void draw(PApplet g);
    public abstract void draw(PApplet g, PVector camDirection);
    public abstract boolean intersect(Ray state);
    public abstract PVector getPoint(float u, float v);
    public abstract boolean inside(BoundingBox bounds);

}
